package com.kantboot.functional.pay.order.service;

import com.kantboot.functional.pay.order.module.dto.FunctionPayOrderDTOOfOrderPaidAfter;
import com.kantboot.functional.pay.order.module.entity.FunctionalPayOrder;

/**
 * 关于支付订单的服务
 */
public interface IFunctionalPayOrderService {

    /**
     * 生成支付订单
     */
    FunctionalPayOrder generatePayOrder(FunctionalPayOrder payOrder);

    /**
     * 根据id查询支付订单
     */
    FunctionalPayOrder getById(Long id);

    /**
     * 根据订单id更新订单状态
     */
    void updateStatusCodeById(Long id, String statusCode);

    /**
     * 对于支付后的处理
     */
    void handlePaidAfter(FunctionPayOrderDTOOfOrderPaidAfter dto);

    /**
     * 检查订单支付后的处理是否成功
     */
    Boolean checkPaidAfterSuccess(Long id);


}
